package com.itheima.aspect;

import org.aspectj.lang.JoinPoint;
import org.aspectj.lang.annotation.Aspect;
import org.aspectj.lang.annotation.Before;
import org.aspectj.lang.annotation.Pointcut;
import org.springframework.stereotype.Component;

/**
 * @version 1.0
 * @description 说明
 * @package com.itheima.aspect
 */
@Component// 注册到spring容器中
@Aspect// 切面类 切面=切入点+通知Advice 增强的代码
public class MyAspect {

    // 切入点Pointcut
    @Pointcut("execution(* com.itheima.controller.*.*(..))")
    public void abc(){}

    /**
     * 通过value属性 绑定切入点
     * Before：在调用目标方法之前执行,
     * before方法
     * strong()
     * HelloController.sayHello()
     *
     */
    @Before("abc()")
    public void strong(JoinPoint joinPoint){
        System.out.println("before执行了...");
    }


}
